/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.edu.uniminuto.bean;

import com.edu.uniminuto.vo.ProgramaPregrado;
import java.util.ArrayList;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.model.SelectItem;

/**
 *
 * @author diegoalejandro
 */
@ManagedBean(name = "programaPregradoBean")
@SessionScoped
public class ProgramaPregradoBean {

    private List<SelectItem> listaItems;
    private Integer programaPregrado;
    private String nombreInscrito;
    private List<ProgramaPregrado> administracion = new ArrayList<ProgramaPregrado>();
    private List<ProgramaPregrado> sistemas = new ArrayList<ProgramaPregrado>();
    private List<ProgramaPregrado> contaduria = new ArrayList<ProgramaPregrado>();
    private List<ProgramaPregrado> comunicación = new ArrayList<ProgramaPregrado>();
    private List<ProgramaPregrado> redes = new ArrayList<ProgramaPregrado>();
    private ProgramaPregrado inscrito;

    public ProgramaPregradoBean() {
    }

    public List<ProgramaPregrado> getAdministracion() {
        return administracion;
    }

    public void setAdministracion(List<ProgramaPregrado> administracion) {
        this.administracion = administracion;
    }

    public List<ProgramaPregrado> getSistemas() {
        return sistemas;
    }

    public void setSistemas(List<ProgramaPregrado> sistemas) {
        this.sistemas = sistemas;
    }

    public List<ProgramaPregrado> getContaduria() {
        return contaduria;
    }

    public void setContaduria(List<ProgramaPregrado> contaduria) {
        this.contaduria = contaduria;
    }

    public List<ProgramaPregrado> getComunicación() {
        return comunicación;
    }

    public void setComunicación(List<ProgramaPregrado> comunicación) {
        this.comunicación = comunicación;
    }

    public List<ProgramaPregrado> getRedes() {
        return redes;
    }

    public void setRedes(List<ProgramaPregrado> redes) {
        this.redes = redes;
    }

    public List<SelectItem> getMiListaItem() {
        return listaItems;
    }

    public void setMiListaItem(List<SelectItem> miListaItem) {
        this.listaItems = miListaItem;
    }

    public Integer getProgramaPregrado() {
        return programaPregrado;
    }

    public void setProgramaPregrado(Integer programaPregrado) {
        this.programaPregrado = programaPregrado;
    }

    public String getNombreInscrito() {
        return nombreInscrito;
    }

    public void setNombreInscrito(String nombreInscrito) {
        this.nombreInscrito = nombreInscrito;
    }

    public List<SelectItem> getCarrerasItems() {
        listaItems = new ArrayList<SelectItem>();
        listaItems.add(new SelectItem(1, "Ingeniería de Sistemas"));
        listaItems.add(new SelectItem(2, "Administración de Empresas"));
        listaItems.add(new SelectItem(3, "Tecnología en Redes"));
        listaItems.add(new SelectItem(4, "Contaduría Pública"));
        listaItems.add(new SelectItem(5, "Comunicación Gráfica."));
        return listaItems;
    }

    public String comprobar() {
        String retorno = "";
            switch (programaPregrado) {
                case 1:
                    inscrito = new ProgramaPregrado(aumentarIndex(sistemas), nombreInscrito);
                    this.sistemas.add(inscrito);
                    retorno = "sistemas";
                    break;
                case 2:
                    inscrito = new ProgramaPregrado(aumentarIndex(administracion), nombreInscrito);
                    this.administracion.add(inscrito);
                    retorno = "administracion";
                    break;
                case 3:
                    inscrito = new ProgramaPregrado(aumentarIndex(redes), nombreInscrito);
                    this.redes.add(inscrito);
                    retorno = "redes";
                    break;
                case 4:
                    inscrito = new ProgramaPregrado(aumentarIndex(contaduria), nombreInscrito);
                    this.contaduria.add(inscrito);
                    retorno = "contaduria";
                    break;
                case 5:
                    inscrito = new ProgramaPregrado(aumentarIndex(comunicación), nombreInscrito);
                    this.comunicación.add(inscrito);
                    retorno = "comunicacion";
                    break;
            }
        return retorno;
    }

    public String volver() {
        return "volver";
    }
    
    public int aumentarIndex(List<ProgramaPregrado> lista) {
        return lista.size() + 1;
    }
}
